package com.ftg.learn.mybatis.chapter3.service;

import com.ftg.learn.mybatis.chapter3.entity.Sale;
import com.ftg.learn.mybatis.chapter3.vo.SaleAndFramer;

import java.util.List;

/**
 * 完成sale的业务逻辑处理
 * @author kangjx
 * @date 2022-10-12
 */
public interface ISale {

    /**
     * 处理显示全部的方法
     * @return List<Sale>
     */
    List<Sale> showall();

    /**
     * 带参查询
     *  多个参数时要用 :
     *      默认 ： 第一个参数 arg0|param1 第二个叫 arg1 | param2 依次类推  本人不推荐
     *      mybatis注解方式： @param(绑定参数) 强烈推荐
     * @param id   主键
     * @param name 名称
     * @return List<Sale>
     */
    List<Sale> showallWithPara(Integer id,String name);

    /**
     * 完成商品添加功能
     * @param sale 部门信息
     * @return  int
     */
    int saveSale(Sale sale);

    /**
     * 级联操作
     * @return List<SaleAndFramer>
     */
    List<SaleAndFramer>  showSaleInfoWithFramer();

}
